package com.foreveross.fetl.queue.util;

import java.util.Calendar;
import java.util.Date;
import java.util.Set;
import java.util.TreeSet;

import com.foreveross.fetl.util.DateUtils;

public class HangxinDateUtil {
	
	public static Set<Date> getFlightDateSet(){
		Set<Date> set =new TreeSet<Date>();
		
		Date day=DateUtils.parse(DateUtils.format(new Date(), "yyyyMMdd"), "yyyyMMdd");
		Calendar c =Calendar.getInstance();
		c.setTime(day);
		//第0天
		set.add(day);
		//第0到59天
		for(int i=0;i<59;i++){
			c.add(Calendar.DAY_OF_MONTH, 1);
			set.add(c.getTime());
		}
		
		
//		int week=c.get(Calendar.DAY_OF_WEEK);
//		if(1!=week){
//			c.add(Calendar.DAY_OF_MONTH, 8-week);
//		}
//		
//		sunday=c.getTime();
//		
//		if(week==1){//周日
//			set.add(sunday);
//		}else if(week==7){ //周六
//			set.add(sunday);
//			c.add(Calendar.DAY_OF_MONTH, -1);
//			set.add(c.getTime());
//		}else if(week==6){//周五
//			set.add(sunday);
//			c.add(Calendar.DAY_OF_MONTH, -1);
//			set.add(c.getTime());
//			c.add(Calendar.DAY_OF_MONTH, -1);
//			set.add(c.getTime());
//		}else{//周一到周四
//			set.add(sunday);
//			c.add(Calendar.DAY_OF_MONTH, -1);
//			set.add(c.getTime());
//			c.add(Calendar.DAY_OF_MONTH, -1);
//			set.add(c.getTime());
//			c.add(Calendar.DAY_OF_MONTH, -1);
//			set.add(c.getTime());
//		}
//		
//		for(int i=1;i<12;i++){
//			Calendar calendar =Calendar.getInstance();
//			calendar.setTime(sunday);
//			calendar.add(Calendar.DAY_OF_YEAR, i*7);
//			set.add(calendar.getTime());
//			calendar.add(Calendar.DAY_OF_MONTH, -1);
//			set.add(calendar.getTime());
//			calendar.add(Calendar.DAY_OF_MONTH, -1);
//			set.add(calendar.getTime());
//			calendar.add(Calendar.DAY_OF_MONTH, -1);
//			set.add(calendar.getTime());
//			
//		}
		
		//2015年春节期间
		Date chineseNewYear=DateUtils.parse("20150213", "yyyyMMdd");
		Calendar yesterDay=Calendar.getInstance();
		yesterDay.add(Calendar.DAY_OF_MONTH, -1);
		Calendar ch=Calendar.getInstance();
		ch.setTime(chineseNewYear);
		if(ch.after(yesterDay)){
			set.add(chineseNewYear);
			for(int i=1;i<6;i++){
				ch.add(Calendar.DAY_OF_MONTH, 1);
				set.add(ch.getTime());
			}
		}
		
		
		
		//2015年国庆期间
		Date nationalDay=DateUtils.parse("20150927", "yyyyMMdd");
		Calendar na=Calendar.getInstance();
		na.setTime(nationalDay);
		
		//20150201后才抓国庆的
		Date startGrabDay=DateUtils.parse("20150201", "yyyyMMdd");
		Calendar cStart=Calendar.getInstance();
		cStart.setTime(startGrabDay);
		
		if(na.after(yesterDay) && cStart.before(yesterDay)){
			set.add(nationalDay);
			for(int i=1;i<6;i++){
				na.add(Calendar.DAY_OF_MONTH, 1);
					set.add(na.getTime());
			}
		}
		return set;
		
	}
	
	public static Integer[] getReturnDays(){
		Integer[] days= new Integer[]{7,15,90};
		return days;
	}

}
